package org.acghub.common.registry;

import java.util.HashMap;
import java.util.Map;
import java.util.Objects;

public abstract class AbstractRegistry<K, V> implements Registry<K, V>
{
    protected Map<K, V> registry;

    protected AbstractRegistry(Map<K, V> registry)
    {
        Objects.requireNonNull(registry, "registry is null");
        this.registry = registry;
    }

    protected AbstractRegistry()
    {
        this(new HashMap<>());
    }

    @Override
    public void register(K k, V v)
    {

    }

    @Override
    public V unregister(K k)
    {
        return null;
    }

    @Override
    public Map<K, V> unregisterAll()
    {
        return null;
    }

    @Override
    public V lookup(K k)
    {
        return null;
    }

    @Override
    public Map<K, V> lookupAll()
    {
        return null;
    }

    @Override
    public boolean isRegistered(K k)
    {
        return false;
    }
}
